//Vektor.h
#pragma once
#include <iostream>
#include <cmath>
#include <cstdio>
#include <cstdlib>
using namespace std;
//float v;

class CVektor
{
public:
	//Eigenschaften der Klasse
	//ksdmlaskjlkas
struct SVektor
{
		float x;
		float y;
		float z;
};

public:

	CVektor();
	
	SVektor* AddVektors(SVektor* V1, SVektor* V2);
	SVektor* getInput();


	~CVektor();

	



	//Methoden
	//Addition von zwei Vektoren
//public:
//	CVektor::SVektor* addVektor(SVektor v1, SVektor v2);

//
//public:
//
//	CVektor::FirstVektor ScanFirstVektor()
//	{
//		CVektor::FirstVektor Scan1;
//		cout<<"Geben Sie die x1: ";
//		cin>>Scan1.x1;
//		cout<<"Geben Sie die y1: ";
//		cin>>Scan1.y1;
//		cout<<"Geben Sie die z1: ";
//		cin>>Scan1.z1;
//
//		
//		return Scan1;
//	}


 ////Addition von zwei Vektoren
	//CVektor::Ergebnis add(CVektor::FirstVektor v1, CVektor::SecondVektor v2)
 //{
 // CVektor::Ergebnis result;
 // result.x = v1.x1 + v2.x2;
 // result.y = v1.y1 + v2.y2;
 // result.z = v1.z1 + v2.z2;
 // return result;
 //}

};


// Aufgabe 2.3
//
//reinterpret_cast: 
//Erlaubt es einen Pointer in jeden anderen Typ von Pointer zu konvertieren
//Typkonvertierungen mittels reinterpret_cast sind die fehlerträchtigsten, 
//da sie in der Regel plattformabhängige Konvertierungen durchführen. 
//Der reinterpret_cast Operator wird zum einen für die Konvertierung zwischen verschiedenen 
//Zeigertypen und zum anderen für die Konvertierung von Ganzzahlen in Zeiger und umgekehrt eingesetzt.
//
//static_cast:
//Der static_cast Operator wird eingesetzt, um zwischen Ganzzahl-Datentypen und Gleitkomma-Datentypen 
//zu konvertieren. 
//Zu beachten ist hierbei, dass nur das niederwertigste Byte übernommen wird, 
//der Rest wird verworfen. Ebenfalls eingesetzt wird der static_cast Operator um einen void-Zeiger 
//(Zeiger ohne bestimmtem Datentyp) in einen beliebigen anderen Zeiger 
//(Zeiger mit bestimmtem Datentyp) zu konvertieren. 
//Außerdem kann der static_cast Operator noch eine Ganzzahl in einen enum-Wert konvertieren. 
//Allerdings muss dabei selber darauf geachtet werden, dass die zu konvertierende Ganzzahl 
//innerhalb der in der enum-Anweisung definierten Konstanten liegt. 
//
//const_cast:
//Der const_cast Operator dient dazu, den const oder volatile Modifizierer von einem Datentyp zu entfernen. 
//Dabei darf sich der neue Datentyp vom Ursprungsdatentyp nur durch den Modifizierer const oder volatile unterscheiden. 
//Alle anderen Konvertierungen führen zu einem Fehler beim Übersetzen des Programms. 
//Als Ergebnis liefert const_cast den auf DTYP konvertierten Ausdruck. 
